Using multiple-precision arithmetic

نویسنده

  • David M. Smith
چکیده

There are many different kinds of problems for which high precision calculation can be useful. The most common situation involves a computation that is numerically unstable, so that using double precision is not sufficient to get the final result as accurately as it is needed. We will use the term “significant digits” to mean the number of equivalent decimal digits of precision, as opposed to the actual number of digits carried when the base is not ten. For most current machines, double precision is the highest accuracy provided in hardware, and this is 53 digits in base 2, or around 16 significant digits. Being able to do a calculation with 30 or 40 significant digits will often overcome the instability and give adequate accuracy for the final result. Even though the term “multiple-precision” may first bring to mind applications such as the computation of billions of digits of π, most actual applications use precisions of a few tens of digits, rather than millions or even hundreds. As an example of such a calculation, let us look at the computation of the Bessel function J1(x) for |x| up to a few hundred. If we actually needed to compute J1(x), there are existing libraries that could be used, but we might have a similar formula that is not one of these standard functions. For small values of x, there is a convergent series,

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Multiple Precision Complex Arithmetic and Functions

The ZM package is a collection of Fortran subroutines that performs floating point multiple precision evaluation of complex arithmetic and elementary functions. These routines use the FM package [7] for real multiple precision arithmetic, constants, and elementary functions. Brent’s MP package [4] did not support complex arithmetic, and Bailey’s more recent MP package [2,3] provides complex ari...

متن کامل

CAMPARY: Cuda Multiple Precision Arithmetic Library and Applications

Many scientific computing applications demand massive numerical computations on parallel architectures such as Graphics Processing Units (GPUs). Usually, either floating-point single or double precision arithmetic is used. Higher precision is generally not available in hardware, and software extended precision libraries are much slower and rarely supported on GPUs. We develop CAMPARY: a multipl...

متن کامل

Tuning Technique for Multiple Precision Dense Matrix Multiplication using Prediction of Computational Time

Although reliable long precision floating-point arithmetic libraries such as QD and MPFR/GMP are necessary to solve ill-conditioned problems in numerical simulation, long precision BLAS-level computation such as matrix multiplication has not been fully optimized because tuning costs are very high compared to IEEE float and double precision arithmetic. In this study, we develop a technique to sh...

متن کامل

Performance evaluation of multiple precision matrix multiplications using parallelized Strassen and Winograd algorithms

It is well known that Strassen and Winograd algorithms can reduce the computational costs associated with dense matrix multiplication. We have already shown that they are also very effective for software-based multiple precision floating-point arithmetic environments such as the MPFR/GMP library. In this paper, we show that we can obtain the same effectiveness for double-double (DD) and quadrup...

متن کامل

Development of Quadruple Precision Arithmetic Toolbox QuPAT on Scilab

When floating point arithmetic is used in numerical computation, cancellation of significant digits, round-off errors and information loss cannot be avoided. In some cases it becomes necessary to use multiple precision arithmetic; however some operations of this arithmetic are difficult to implement within conventional computing environments. In this paper we consider implementation of a quadru...

متن کامل

Accelerated Multiple Precision Matrix Multiplication using Strassen's Algorithm and Winograd's Variant

The Strassen algorithm and Winograd’s variant accelerate matrix multiplication by using fewer arithmetic operations than standard matrix multiplication. Although many papers have been published to accelerate singleas well as double-precision matrix multiplication by using these algorithms, no research to date has been undertaken to accelerate multiple precision matrix multiplication. In this pa...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Computing in Science and Engineering

دوره 5  شماره 

صفحات  -

تاریخ انتشار 2003